package com.yami.shop.bean.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.yami.shop.common.serializer.json.ChainJsonSerializer;
import com.yami.shop.common.serializer.json.ChannelJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class RedPacketInfoUserVo implements Serializable {

    @Schema(description = "id  record_id/info_id")
    private Long id;

    @Schema(description = "用户id")
    private String userId;

    @Schema(description = "用户名称")
    private String userName;

    @Schema(description = "领取时间")
    private LocalDateTime date;

    @Schema(description = "红包名称，daw名称/人民币/gas")
    private String name;

    @Schema(description = "链接")
    @JsonSerialize(using = ChainJsonSerializer.class)
    private String address;

    @Schema(description = "领取金额")
    private Double amount;
    @JsonSerialize(using = ChannelJsonSerializer.class)
    private String channelCode;
    private String denomId;

    private String dawName;
    private String type;
    
    @Schema(description = "红包总共个数")
    private Integer totalPacket;

    @Schema(description = "剩余红包个数")
    private Integer remainingPacket;
}
